<

TextInputClient.currentAutofillScope プロパティの追加

まとめ

新しいゲッター、TextInputClient.currentAutofillScopeに追加されました。TextInputClientインターフェース;全てTextInputClientサブクラスは必ず ~の具体的な実装を提供するcurrentAutofillScope

このゲッターにより、TextInputClientを引き起こす 論理的に接続された複数の入力を含む自動入力 田畑。たとえば、「ユーザー名」フィールドは、 それ自体と「パスワード」の両方を入力する自動入力 それに関連付けられたフィールド。

コンテクスト

多くのプラットフォームで、自動入力サービスは次のことができます。 1 回の自動入力試行で複数の入力フィールドを自動入力します。 たとえば、ユーザー名フィールドとパスワードフィールドは通常、 一度に自動入力されます。このため、Flutter 入力 自動入力をトリガーしようとしているフィールドにも提供する必要があります 他の自動入力可能な入力に関する情報を含むプラットフォーム 論理的に接続されたフィールド。TextInputClient.currentAutofillScopeのグループを定義します これに論理的に接続されている入力フィールドTextInputClient、 一緒に自動入力することもできます。

変更内容の説明

TextInputClientを返す追加のゲッターが追加されました。 のAutofillScopeこのクライアントが所属しているもの。 このゲッターは、入力クライアントが自動入力を収集するために使用します。 他の自動入力可能な入力フィールドからの関連情報 同じ範囲内で。

abstract class TextInputClient {
  AutofillScope get currentAutofillScope;
}

「具体的な実装が見つかりません」というエラー メッセージが表示された場合は、 コンパイル中の「getter TextInputClient.currentAutofillScope」」 Flutter アプリの場合は、以下に示す移行手順に従ってください。

移行ガイド

複数フィールドの自動入力を追加する予定がない場合 あなたへのサポートTextInputClientサブクラス、 ただ返すだけnullゲッター内:

class CustomTextField implements TextInputClient {
  // Not having an AutofillScope does not prevent the input field
  // from being autofilled. However, only this input field is
  // autofilled when autofill is triggered on it.
  AutofillScope get currentAutofillScope => null;
}

複数フィールドの自動入力サポートが必要な場合は、一般的なAutofillScope使用するのは、AutofillGroupウィジェット。 最も近いものを取得するにはAutofillGroupテキストへのウィジェット 入力、使用AutofillGroup.of(context):

class CustomTextFieldState extends State<CustomTextField> implements TextInputClient {
  AutofillScope get currentAutofillScope => AutofillGroup.of(context);
}

詳細については、こちらをご覧くださいAutofillGroup

タイムライン

リリースされたバージョン: 1.18.0
安定版リリース: 1.20

参考文献

API ドキュメント:

  • AutofillGroup
  • TextInputClient.currentAutofillScope

関連する問題:

  • 問題 13015: 自動入力のサポート

関連する PR:

  • 自動入力サポートを追加したフレームワーク PR